Ah, it looks like I gave you the wrong key for the custom assets. In recent versions of Authelia (v4.38+), that specific configuration moved under the server block but with a slightly different structure.
The error configuration key not expected: server.custom_assets.path confirms that Authelia doesn't recognize where you put that line.

The Fix: Update the Asset Path

In the newer versions, the configuration should look like this:

YAML

server:
address: 'tcp://0.0.0.0:9091/'
# The correct key is 'asset_path', not 'custom_assets.path'
asset_path: /config/assets/

Why it crashed

Authelia is very strict about its YAML schema. If it encounters a key it doesn't recognize (like custom_assets), it assumes the configuration is malformed and shuts down immediately to prevent security risks.

---

Cleaned up configuration.yml

Since your logs also showed several "deprecated" warnings, here is the modernized version of those blocks to stop the warnings and fix the crash:

YAML

server:
address: 'tcp://0.0.0.0:9091/'
asset_path: /config/assets/

session:
name: authelia_session
secret: 'YOUR_SESSION_SECRET'
cookies:
- domain: 'britbuzz.uk'
authelia_url: 'https://auth.britbuzz.uk'
default_redirection_url: 'https://vscode.britbuzz.uk'

# Keep your Duo and Access Control sections as they were

---

Verifying the Assets

Once you change the key to asset_path and restart the container, Authelia will look in /config/assets/ for:

  1. logo.png (to replace the top-left logo)
  2. favicon.ico (to replace the browser tab icon)

Try making that change in your configuration.yml and run docker compose up -d. Does the container stay "Up" now?